const path = require('path')
const webpack = require('webpack')

// 导入webpack-html-plugin
const whp = require('html-webpack-plugin')
const { rule } = require('postcss')

module.exports = {
    entry: path.join(__dirname, './src/main.js'), // 入口，表示，要使用 webpack 打包哪个文件
    output: { // 输出文件相关的配置
        path: path.join(__dirname, './dist'), // 指定 打包好的文件，输出到哪个目录中去
        filename: 'bundle.js' // 这是指定 输出的文件的名称
    },
    mode: "development",
    devServer: { // 配置webpack-dev-server运行参数
        open: true,
        port: 80,
        hot: true,
        contentBase: 'src',
    },
    plugins: [
        new webpack.HotModuleReplacementPlugin(), //启用热更新
        new whp({
            //指定模板页面
            template: path.join(__dirname, "./src/index.html"),
            filename: "index.html"
        })
    ],
    module: { //配置第三方加载器
        rules: [
            // 配置style-loader 和 css-loader
            { test: /\.css$/, use: ["style-loader", "css-loader"] },
            { test: /\.less$/, use: ["style-loader", "css-loader", "less-loader"] },
            { test: /\.scss$/, use: ["style-loader", "css-loader", "sass-loader"] },
        ]
    }
}